package com.kongjs.application.model.vo;

import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

@Getter
@Setter
@ToString
public class UpdateMenuVO {
    private Long id;
    private Long pid;
    /**
     * 菜单名称
     */
    @NotBlank(message = "菜单名称不能为空")
    private String name;
    /**
     * 路由路径
     */
    @NotBlank(message = "菜单路径不能为空")
    private String path;
    /**
     * 重定向
     */
    private String redirect;
    /**
     * 菜单类型
     */
    @NotBlank(message = "菜单类型不能为空")
    private String type;

    private Integer sort;
    /**
     * 后端权限标识
     */
    private String authCode;
    /**
     * 组件
     */
    private String component;
    /**
     * 菜单元数据
     */
    @NotNull(message = "元数据不能为空")
    private UpdateMenuMetaVO meta;
    @Min(message = "启用状态 0 停用", value = 0)
    @Max(message = "启用状态 1 启用", value = 1)
    @NotNull(message = "启用状态不能为空")
    private Integer enabled;
}
